package com.wzl.base;

import com.wzl.base.domain.Student;

/**
 * 关键字
 * 存在继承的情况下，初始化顺序为：
 * - 父类（静态变量、静态语句块）
 * - 子类（静态变量、静态语句块）
 * - 父类（实例变量、普通语句块）
 * - 父类（构造函数）
 * - 子类（实例变量、普通语句块）
 * - 子类（构造函数）
 * 其中 静态变量、静态语句块 不分先后，按代码顺序执行
 *
 * @author weiZhiLin
 * @version 1.0
 * @date 2020/1/17 14:31
 */
public class StudyDemo03 {
    // 对于基本类型，final 使数值不变；
    // 对于引用类型，final 使引用不变，也就不能引用其它对象，但是被引用的对象本身是可以修改的。
    static final int a = 1;
    static final Student s = new Student();

    static int b = 1;
    static Student t = new Student();

    public static void testFinal() {
        // 下面两步直接报错
//        a = 2;
//        s = new Student();
        s.setName("Test");

        b = 2;
        t = new Student();
        System.out.println(s.getName());
        System.out.println(b);
        System.out.println(t);
    }

    public static void main(String[] args) {
        testFinal();
    }
}
